package cn.vconinfo.lims.delivery.model;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class SpecimenRegisterExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public SpecimenRegisterExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andSpecimenRegisterIdIsNull() {
            addCriterion("specimen_register_id is null");
            return (Criteria) this;
        }

        public Criteria andSpecimenRegisterIdIsNotNull() {
            addCriterion("specimen_register_id is not null");
            return (Criteria) this;
        }

        public Criteria andSpecimenRegisterIdEqualTo(Long value) {
            addCriterion("specimen_register_id =", value, "specimenRegisterId");
            return (Criteria) this;
        }

        public Criteria andSpecimenRegisterIdNotEqualTo(Long value) {
            addCriterion("specimen_register_id <>", value, "specimenRegisterId");
            return (Criteria) this;
        }

        public Criteria andSpecimenRegisterIdGreaterThan(Long value) {
            addCriterion("specimen_register_id >", value, "specimenRegisterId");
            return (Criteria) this;
        }

        public Criteria andSpecimenRegisterIdGreaterThanOrEqualTo(Long value) {
            addCriterion("specimen_register_id >=", value, "specimenRegisterId");
            return (Criteria) this;
        }

        public Criteria andSpecimenRegisterIdLessThan(Long value) {
            addCriterion("specimen_register_id <", value, "specimenRegisterId");
            return (Criteria) this;
        }

        public Criteria andSpecimenRegisterIdLessThanOrEqualTo(Long value) {
            addCriterion("specimen_register_id <=", value, "specimenRegisterId");
            return (Criteria) this;
        }

        public Criteria andSpecimenRegisterIdIn(List<Long> values) {
            addCriterion("specimen_register_id in", values, "specimenRegisterId");
            return (Criteria) this;
        }

        public Criteria andSpecimenRegisterIdNotIn(List<Long> values) {
            addCriterion("specimen_register_id not in", values, "specimenRegisterId");
            return (Criteria) this;
        }

        public Criteria andSpecimenRegisterIdBetween(Long value1, Long value2) {
            addCriterion("specimen_register_id between", value1, value2, "specimenRegisterId");
            return (Criteria) this;
        }

        public Criteria andSpecimenRegisterIdNotBetween(Long value1, Long value2) {
            addCriterion("specimen_register_id not between", value1, value2, "specimenRegisterId");
            return (Criteria) this;
        }

        public Criteria andSpecimenExtraIdIsNull() {
            addCriterion("specimen_extra_id is null");
            return (Criteria) this;
        }

        public Criteria andSpecimenExtraIdIsNotNull() {
            addCriterion("specimen_extra_id is not null");
            return (Criteria) this;
        }

        public Criteria andSpecimenExtraIdEqualTo(Long value) {
            addCriterion("specimen_extra_id =", value, "specimenExtraId");
            return (Criteria) this;
        }

        public Criteria andSpecimenExtraIdNotEqualTo(Long value) {
            addCriterion("specimen_extra_id <>", value, "specimenExtraId");
            return (Criteria) this;
        }

        public Criteria andSpecimenExtraIdGreaterThan(Long value) {
            addCriterion("specimen_extra_id >", value, "specimenExtraId");
            return (Criteria) this;
        }

        public Criteria andSpecimenExtraIdGreaterThanOrEqualTo(Long value) {
            addCriterion("specimen_extra_id >=", value, "specimenExtraId");
            return (Criteria) this;
        }

        public Criteria andSpecimenExtraIdLessThan(Long value) {
            addCriterion("specimen_extra_id <", value, "specimenExtraId");
            return (Criteria) this;
        }

        public Criteria andSpecimenExtraIdLessThanOrEqualTo(Long value) {
            addCriterion("specimen_extra_id <=", value, "specimenExtraId");
            return (Criteria) this;
        }

        public Criteria andSpecimenExtraIdIn(List<Long> values) {
            addCriterion("specimen_extra_id in", values, "specimenExtraId");
            return (Criteria) this;
        }

        public Criteria andSpecimenExtraIdNotIn(List<Long> values) {
            addCriterion("specimen_extra_id not in", values, "specimenExtraId");
            return (Criteria) this;
        }

        public Criteria andSpecimenExtraIdBetween(Long value1, Long value2) {
            addCriterion("specimen_extra_id between", value1, value2, "specimenExtraId");
            return (Criteria) this;
        }

        public Criteria andSpecimenExtraIdNotBetween(Long value1, Long value2) {
            addCriterion("specimen_extra_id not between", value1, value2, "specimenExtraId");
            return (Criteria) this;
        }

        public Criteria andPlaceholderCodeIsNull() {
            addCriterion("placeholder_code is null");
            return (Criteria) this;
        }

        public Criteria andPlaceholderCodeIsNotNull() {
            addCriterion("placeholder_code is not null");
            return (Criteria) this;
        }

        public Criteria andPlaceholderCodeEqualTo(String value) {
            addCriterion("placeholder_code =", value, "placeholderCode");
            return (Criteria) this;
        }

        public Criteria andPlaceholderCodeNotEqualTo(String value) {
            addCriterion("placeholder_code <>", value, "placeholderCode");
            return (Criteria) this;
        }

        public Criteria andPlaceholderCodeGreaterThan(String value) {
            addCriterion("placeholder_code >", value, "placeholderCode");
            return (Criteria) this;
        }

        public Criteria andPlaceholderCodeGreaterThanOrEqualTo(String value) {
            addCriterion("placeholder_code >=", value, "placeholderCode");
            return (Criteria) this;
        }

        public Criteria andPlaceholderCodeLessThan(String value) {
            addCriterion("placeholder_code <", value, "placeholderCode");
            return (Criteria) this;
        }

        public Criteria andPlaceholderCodeLessThanOrEqualTo(String value) {
            addCriterion("placeholder_code <=", value, "placeholderCode");
            return (Criteria) this;
        }

        public Criteria andPlaceholderCodeLike(String value) {
            addCriterion("placeholder_code like", value, "placeholderCode");
            return (Criteria) this;
        }

        public Criteria andPlaceholderCodeNotLike(String value) {
            addCriterion("placeholder_code not like", value, "placeholderCode");
            return (Criteria) this;
        }

        public Criteria andPlaceholderCodeIn(List<String> values) {
            addCriterion("placeholder_code in", values, "placeholderCode");
            return (Criteria) this;
        }

        public Criteria andPlaceholderCodeNotIn(List<String> values) {
            addCriterion("placeholder_code not in", values, "placeholderCode");
            return (Criteria) this;
        }

        public Criteria andPlaceholderCodeBetween(String value1, String value2) {
            addCriterion("placeholder_code between", value1, value2, "placeholderCode");
            return (Criteria) this;
        }

        public Criteria andPlaceholderCodeNotBetween(String value1, String value2) {
            addCriterion("placeholder_code not between", value1, value2, "placeholderCode");
            return (Criteria) this;
        }

        public Criteria andPatientTagIsNull() {
            addCriterion("patient_tag is null");
            return (Criteria) this;
        }

        public Criteria andPatientTagIsNotNull() {
            addCriterion("patient_tag is not null");
            return (Criteria) this;
        }

        public Criteria andPatientTagEqualTo(Integer value) {
            addCriterion("patient_tag =", value, "patientTag");
            return (Criteria) this;
        }

        public Criteria andPatientTagNotEqualTo(Integer value) {
            addCriterion("patient_tag <>", value, "patientTag");
            return (Criteria) this;
        }

        public Criteria andPatientTagGreaterThan(Integer value) {
            addCriterion("patient_tag >", value, "patientTag");
            return (Criteria) this;
        }

        public Criteria andPatientTagGreaterThanOrEqualTo(Integer value) {
            addCriterion("patient_tag >=", value, "patientTag");
            return (Criteria) this;
        }

        public Criteria andPatientTagLessThan(Integer value) {
            addCriterion("patient_tag <", value, "patientTag");
            return (Criteria) this;
        }

        public Criteria andPatientTagLessThanOrEqualTo(Integer value) {
            addCriterion("patient_tag <=", value, "patientTag");
            return (Criteria) this;
        }

        public Criteria andPatientTagIn(List<Integer> values) {
            addCriterion("patient_tag in", values, "patientTag");
            return (Criteria) this;
        }

        public Criteria andPatientTagNotIn(List<Integer> values) {
            addCriterion("patient_tag not in", values, "patientTag");
            return (Criteria) this;
        }

        public Criteria andPatientTagBetween(Integer value1, Integer value2) {
            addCriterion("patient_tag between", value1, value2, "patientTag");
            return (Criteria) this;
        }

        public Criteria andPatientTagNotBetween(Integer value1, Integer value2) {
            addCriterion("patient_tag not between", value1, value2, "patientTag");
            return (Criteria) this;
        }

        public Criteria andPatientTypeIsNull() {
            addCriterion("patient_type is null");
            return (Criteria) this;
        }

        public Criteria andPatientTypeIsNotNull() {
            addCriterion("patient_type is not null");
            return (Criteria) this;
        }

        public Criteria andPatientTypeEqualTo(Integer value) {
            addCriterion("patient_type =", value, "patientType");
            return (Criteria) this;
        }

        public Criteria andPatientTypeNotEqualTo(Integer value) {
            addCriterion("patient_type <>", value, "patientType");
            return (Criteria) this;
        }

        public Criteria andPatientTypeGreaterThan(Integer value) {
            addCriterion("patient_type >", value, "patientType");
            return (Criteria) this;
        }

        public Criteria andPatientTypeGreaterThanOrEqualTo(Integer value) {
            addCriterion("patient_type >=", value, "patientType");
            return (Criteria) this;
        }

        public Criteria andPatientTypeLessThan(Integer value) {
            addCriterion("patient_type <", value, "patientType");
            return (Criteria) this;
        }

        public Criteria andPatientTypeLessThanOrEqualTo(Integer value) {
            addCriterion("patient_type <=", value, "patientType");
            return (Criteria) this;
        }

        public Criteria andPatientTypeIn(List<Integer> values) {
            addCriterion("patient_type in", values, "patientType");
            return (Criteria) this;
        }

        public Criteria andPatientTypeNotIn(List<Integer> values) {
            addCriterion("patient_type not in", values, "patientType");
            return (Criteria) this;
        }

        public Criteria andPatientTypeBetween(Integer value1, Integer value2) {
            addCriterion("patient_type between", value1, value2, "patientType");
            return (Criteria) this;
        }

        public Criteria andPatientTypeNotBetween(Integer value1, Integer value2) {
            addCriterion("patient_type not between", value1, value2, "patientType");
            return (Criteria) this;
        }

        public Criteria andHospitalIdIsNull() {
            addCriterion("hospital_id is null");
            return (Criteria) this;
        }

        public Criteria andHospitalIdIsNotNull() {
            addCriterion("hospital_id is not null");
            return (Criteria) this;
        }

        public Criteria andHospitalIdEqualTo(Long value) {
            addCriterion("hospital_id =", value, "hospitalId");
            return (Criteria) this;
        }

        public Criteria andHospitalIdNotEqualTo(Long value) {
            addCriterion("hospital_id <>", value, "hospitalId");
            return (Criteria) this;
        }

        public Criteria andHospitalIdGreaterThan(Long value) {
            addCriterion("hospital_id >", value, "hospitalId");
            return (Criteria) this;
        }

        public Criteria andHospitalIdGreaterThanOrEqualTo(Long value) {
            addCriterion("hospital_id >=", value, "hospitalId");
            return (Criteria) this;
        }

        public Criteria andHospitalIdLessThan(Long value) {
            addCriterion("hospital_id <", value, "hospitalId");
            return (Criteria) this;
        }

        public Criteria andHospitalIdLessThanOrEqualTo(Long value) {
            addCriterion("hospital_id <=", value, "hospitalId");
            return (Criteria) this;
        }

        public Criteria andHospitalIdIn(List<Long> values) {
            addCriterion("hospital_id in", values, "hospitalId");
            return (Criteria) this;
        }

        public Criteria andHospitalIdNotIn(List<Long> values) {
            addCriterion("hospital_id not in", values, "hospitalId");
            return (Criteria) this;
        }

        public Criteria andHospitalIdBetween(Long value1, Long value2) {
            addCriterion("hospital_id between", value1, value2, "hospitalId");
            return (Criteria) this;
        }

        public Criteria andHospitalIdNotBetween(Long value1, Long value2) {
            addCriterion("hospital_id not between", value1, value2, "hospitalId");
            return (Criteria) this;
        }

        public Criteria andPatientNameIsNull() {
            addCriterion("patient_name is null");
            return (Criteria) this;
        }

        public Criteria andPatientNameIsNotNull() {
            addCriterion("patient_name is not null");
            return (Criteria) this;
        }

        public Criteria andPatientNameEqualTo(String value) {
            addCriterion("patient_name =", value, "patientName");
            return (Criteria) this;
        }

        public Criteria andPatientNameNotEqualTo(String value) {
            addCriterion("patient_name <>", value, "patientName");
            return (Criteria) this;
        }

        public Criteria andPatientNameGreaterThan(String value) {
            addCriterion("patient_name >", value, "patientName");
            return (Criteria) this;
        }

        public Criteria andPatientNameGreaterThanOrEqualTo(String value) {
            addCriterion("patient_name >=", value, "patientName");
            return (Criteria) this;
        }

        public Criteria andPatientNameLessThan(String value) {
            addCriterion("patient_name <", value, "patientName");
            return (Criteria) this;
        }

        public Criteria andPatientNameLessThanOrEqualTo(String value) {
            addCriterion("patient_name <=", value, "patientName");
            return (Criteria) this;
        }

        public Criteria andPatientNameLike(String value) {
            addCriterion("patient_name like", value, "patientName");
            return (Criteria) this;
        }

        public Criteria andPatientNameNotLike(String value) {
            addCriterion("patient_name not like", value, "patientName");
            return (Criteria) this;
        }

        public Criteria andPatientNameIn(List<String> values) {
            addCriterion("patient_name in", values, "patientName");
            return (Criteria) this;
        }

        public Criteria andPatientNameNotIn(List<String> values) {
            addCriterion("patient_name not in", values, "patientName");
            return (Criteria) this;
        }

        public Criteria andPatientNameBetween(String value1, String value2) {
            addCriterion("patient_name between", value1, value2, "patientName");
            return (Criteria) this;
        }

        public Criteria andPatientNameNotBetween(String value1, String value2) {
            addCriterion("patient_name not between", value1, value2, "patientName");
            return (Criteria) this;
        }

        public Criteria andPatientSexIsNull() {
            addCriterion("patient_sex is null");
            return (Criteria) this;
        }

        public Criteria andPatientSexIsNotNull() {
            addCriterion("patient_sex is not null");
            return (Criteria) this;
        }

        public Criteria andPatientSexEqualTo(Integer value) {
            addCriterion("patient_sex =", value, "patientSex");
            return (Criteria) this;
        }

        public Criteria andPatientSexNotEqualTo(Integer value) {
            addCriterion("patient_sex <>", value, "patientSex");
            return (Criteria) this;
        }

        public Criteria andPatientSexGreaterThan(Integer value) {
            addCriterion("patient_sex >", value, "patientSex");
            return (Criteria) this;
        }

        public Criteria andPatientSexGreaterThanOrEqualTo(Integer value) {
            addCriterion("patient_sex >=", value, "patientSex");
            return (Criteria) this;
        }

        public Criteria andPatientSexLessThan(Integer value) {
            addCriterion("patient_sex <", value, "patientSex");
            return (Criteria) this;
        }

        public Criteria andPatientSexLessThanOrEqualTo(Integer value) {
            addCriterion("patient_sex <=", value, "patientSex");
            return (Criteria) this;
        }

        public Criteria andPatientSexIn(List<Integer> values) {
            addCriterion("patient_sex in", values, "patientSex");
            return (Criteria) this;
        }

        public Criteria andPatientSexNotIn(List<Integer> values) {
            addCriterion("patient_sex not in", values, "patientSex");
            return (Criteria) this;
        }

        public Criteria andPatientSexBetween(Integer value1, Integer value2) {
            addCriterion("patient_sex between", value1, value2, "patientSex");
            return (Criteria) this;
        }

        public Criteria andPatientSexNotBetween(Integer value1, Integer value2) {
            addCriterion("patient_sex not between", value1, value2, "patientSex");
            return (Criteria) this;
        }

        public Criteria andPatientTelIsNull() {
            addCriterion("patient_tel is null");
            return (Criteria) this;
        }

        public Criteria andPatientTelIsNotNull() {
            addCriterion("patient_tel is not null");
            return (Criteria) this;
        }

        public Criteria andPatientTelEqualTo(String value) {
            addCriterion("patient_tel =", value, "patientTel");
            return (Criteria) this;
        }

        public Criteria andPatientTelNotEqualTo(String value) {
            addCriterion("patient_tel <>", value, "patientTel");
            return (Criteria) this;
        }

        public Criteria andPatientTelGreaterThan(String value) {
            addCriterion("patient_tel >", value, "patientTel");
            return (Criteria) this;
        }

        public Criteria andPatientTelGreaterThanOrEqualTo(String value) {
            addCriterion("patient_tel >=", value, "patientTel");
            return (Criteria) this;
        }

        public Criteria andPatientTelLessThan(String value) {
            addCriterion("patient_tel <", value, "patientTel");
            return (Criteria) this;
        }

        public Criteria andPatientTelLessThanOrEqualTo(String value) {
            addCriterion("patient_tel <=", value, "patientTel");
            return (Criteria) this;
        }

        public Criteria andPatientTelLike(String value) {
            addCriterion("patient_tel like", value, "patientTel");
            return (Criteria) this;
        }

        public Criteria andPatientTelNotLike(String value) {
            addCriterion("patient_tel not like", value, "patientTel");
            return (Criteria) this;
        }

        public Criteria andPatientTelIn(List<String> values) {
            addCriterion("patient_tel in", values, "patientTel");
            return (Criteria) this;
        }

        public Criteria andPatientTelNotIn(List<String> values) {
            addCriterion("patient_tel not in", values, "patientTel");
            return (Criteria) this;
        }

        public Criteria andPatientTelBetween(String value1, String value2) {
            addCriterion("patient_tel between", value1, value2, "patientTel");
            return (Criteria) this;
        }

        public Criteria andPatientTelNotBetween(String value1, String value2) {
            addCriterion("patient_tel not between", value1, value2, "patientTel");
            return (Criteria) this;
        }

        public Criteria andDoorNumIsNull() {
            addCriterion("door_num is null");
            return (Criteria) this;
        }

        public Criteria andDoorNumIsNotNull() {
            addCriterion("door_num is not null");
            return (Criteria) this;
        }

        public Criteria andDoorNumEqualTo(String value) {
            addCriterion("door_num =", value, "doorNum");
            return (Criteria) this;
        }

        public Criteria andDoorNumNotEqualTo(String value) {
            addCriterion("door_num <>", value, "doorNum");
            return (Criteria) this;
        }

        public Criteria andDoorNumGreaterThan(String value) {
            addCriterion("door_num >", value, "doorNum");
            return (Criteria) this;
        }

        public Criteria andDoorNumGreaterThanOrEqualTo(String value) {
            addCriterion("door_num >=", value, "doorNum");
            return (Criteria) this;
        }

        public Criteria andDoorNumLessThan(String value) {
            addCriterion("door_num <", value, "doorNum");
            return (Criteria) this;
        }

        public Criteria andDoorNumLessThanOrEqualTo(String value) {
            addCriterion("door_num <=", value, "doorNum");
            return (Criteria) this;
        }

        public Criteria andDoorNumLike(String value) {
            addCriterion("door_num like", value, "doorNum");
            return (Criteria) this;
        }

        public Criteria andDoorNumNotLike(String value) {
            addCriterion("door_num not like", value, "doorNum");
            return (Criteria) this;
        }

        public Criteria andDoorNumIn(List<String> values) {
            addCriterion("door_num in", values, "doorNum");
            return (Criteria) this;
        }

        public Criteria andDoorNumNotIn(List<String> values) {
            addCriterion("door_num not in", values, "doorNum");
            return (Criteria) this;
        }

        public Criteria andDoorNumBetween(String value1, String value2) {
            addCriterion("door_num between", value1, value2, "doorNum");
            return (Criteria) this;
        }

        public Criteria andDoorNumNotBetween(String value1, String value2) {
            addCriterion("door_num not between", value1, value2, "doorNum");
            return (Criteria) this;
        }

        public Criteria andPatientAgeIsNull() {
            addCriterion("patient_age is null");
            return (Criteria) this;
        }

        public Criteria andPatientAgeIsNotNull() {
            addCriterion("patient_age is not null");
            return (Criteria) this;
        }

        public Criteria andPatientAgeEqualTo(Integer value) {
            addCriterion("patient_age =", value, "patientAge");
            return (Criteria) this;
        }

        public Criteria andPatientAgeNotEqualTo(Integer value) {
            addCriterion("patient_age <>", value, "patientAge");
            return (Criteria) this;
        }

        public Criteria andPatientAgeGreaterThan(Integer value) {
            addCriterion("patient_age >", value, "patientAge");
            return (Criteria) this;
        }

        public Criteria andPatientAgeGreaterThanOrEqualTo(Integer value) {
            addCriterion("patient_age >=", value, "patientAge");
            return (Criteria) this;
        }

        public Criteria andPatientAgeLessThan(Integer value) {
            addCriterion("patient_age <", value, "patientAge");
            return (Criteria) this;
        }

        public Criteria andPatientAgeLessThanOrEqualTo(Integer value) {
            addCriterion("patient_age <=", value, "patientAge");
            return (Criteria) this;
        }

        public Criteria andPatientAgeIn(List<Integer> values) {
            addCriterion("patient_age in", values, "patientAge");
            return (Criteria) this;
        }

        public Criteria andPatientAgeNotIn(List<Integer> values) {
            addCriterion("patient_age not in", values, "patientAge");
            return (Criteria) this;
        }

        public Criteria andPatientAgeBetween(Integer value1, Integer value2) {
            addCriterion("patient_age between", value1, value2, "patientAge");
            return (Criteria) this;
        }

        public Criteria andPatientAgeNotBetween(Integer value1, Integer value2) {
            addCriterion("patient_age not between", value1, value2, "patientAge");
            return (Criteria) this;
        }

        public Criteria andPatientAgeTypeIsNull() {
            addCriterion("patient_age_type is null");
            return (Criteria) this;
        }

        public Criteria andPatientAgeTypeIsNotNull() {
            addCriterion("patient_age_type is not null");
            return (Criteria) this;
        }

        public Criteria andPatientAgeTypeEqualTo(Integer value) {
            addCriterion("patient_age_type =", value, "patientAgeType");
            return (Criteria) this;
        }

        public Criteria andPatientAgeTypeNotEqualTo(Integer value) {
            addCriterion("patient_age_type <>", value, "patientAgeType");
            return (Criteria) this;
        }

        public Criteria andPatientAgeTypeGreaterThan(Integer value) {
            addCriterion("patient_age_type >", value, "patientAgeType");
            return (Criteria) this;
        }

        public Criteria andPatientAgeTypeGreaterThanOrEqualTo(Integer value) {
            addCriterion("patient_age_type >=", value, "patientAgeType");
            return (Criteria) this;
        }

        public Criteria andPatientAgeTypeLessThan(Integer value) {
            addCriterion("patient_age_type <", value, "patientAgeType");
            return (Criteria) this;
        }

        public Criteria andPatientAgeTypeLessThanOrEqualTo(Integer value) {
            addCriterion("patient_age_type <=", value, "patientAgeType");
            return (Criteria) this;
        }

        public Criteria andPatientAgeTypeIn(List<Integer> values) {
            addCriterion("patient_age_type in", values, "patientAgeType");
            return (Criteria) this;
        }

        public Criteria andPatientAgeTypeNotIn(List<Integer> values) {
            addCriterion("patient_age_type not in", values, "patientAgeType");
            return (Criteria) this;
        }

        public Criteria andPatientAgeTypeBetween(Integer value1, Integer value2) {
            addCriterion("patient_age_type between", value1, value2, "patientAgeType");
            return (Criteria) this;
        }

        public Criteria andPatientAgeTypeNotBetween(Integer value1, Integer value2) {
            addCriterion("patient_age_type not between", value1, value2, "patientAgeType");
            return (Criteria) this;
        }

        public Criteria andDepartmentIdIsNull() {
            addCriterion("department_id is null");
            return (Criteria) this;
        }

        public Criteria andDepartmentIdIsNotNull() {
            addCriterion("department_id is not null");
            return (Criteria) this;
        }

        public Criteria andDepartmentIdEqualTo(Integer value) {
            addCriterion("department_id =", value, "departmentId");
            return (Criteria) this;
        }

        public Criteria andDepartmentIdNotEqualTo(Integer value) {
            addCriterion("department_id <>", value, "departmentId");
            return (Criteria) this;
        }

        public Criteria andDepartmentIdGreaterThan(Integer value) {
            addCriterion("department_id >", value, "departmentId");
            return (Criteria) this;
        }

        public Criteria andDepartmentIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("department_id >=", value, "departmentId");
            return (Criteria) this;
        }

        public Criteria andDepartmentIdLessThan(Integer value) {
            addCriterion("department_id <", value, "departmentId");
            return (Criteria) this;
        }

        public Criteria andDepartmentIdLessThanOrEqualTo(Integer value) {
            addCriterion("department_id <=", value, "departmentId");
            return (Criteria) this;
        }

        public Criteria andDepartmentIdIn(List<Integer> values) {
            addCriterion("department_id in", values, "departmentId");
            return (Criteria) this;
        }

        public Criteria andDepartmentIdNotIn(List<Integer> values) {
            addCriterion("department_id not in", values, "departmentId");
            return (Criteria) this;
        }

        public Criteria andDepartmentIdBetween(Integer value1, Integer value2) {
            addCriterion("department_id between", value1, value2, "departmentId");
            return (Criteria) this;
        }

        public Criteria andDepartmentIdNotBetween(Integer value1, Integer value2) {
            addCriterion("department_id not between", value1, value2, "departmentId");
            return (Criteria) this;
        }

        public Criteria andBedNumIsNull() {
            addCriterion("bed_num is null");
            return (Criteria) this;
        }

        public Criteria andBedNumIsNotNull() {
            addCriterion("bed_num is not null");
            return (Criteria) this;
        }

        public Criteria andBedNumEqualTo(String value) {
            addCriterion("bed_num =", value, "bedNum");
            return (Criteria) this;
        }

        public Criteria andBedNumNotEqualTo(String value) {
            addCriterion("bed_num <>", value, "bedNum");
            return (Criteria) this;
        }

        public Criteria andBedNumGreaterThan(String value) {
            addCriterion("bed_num >", value, "bedNum");
            return (Criteria) this;
        }

        public Criteria andBedNumGreaterThanOrEqualTo(String value) {
            addCriterion("bed_num >=", value, "bedNum");
            return (Criteria) this;
        }

        public Criteria andBedNumLessThan(String value) {
            addCriterion("bed_num <", value, "bedNum");
            return (Criteria) this;
        }

        public Criteria andBedNumLessThanOrEqualTo(String value) {
            addCriterion("bed_num <=", value, "bedNum");
            return (Criteria) this;
        }

        public Criteria andBedNumLike(String value) {
            addCriterion("bed_num like", value, "bedNum");
            return (Criteria) this;
        }

        public Criteria andBedNumNotLike(String value) {
            addCriterion("bed_num not like", value, "bedNum");
            return (Criteria) this;
        }

        public Criteria andBedNumIn(List<String> values) {
            addCriterion("bed_num in", values, "bedNum");
            return (Criteria) this;
        }

        public Criteria andBedNumNotIn(List<String> values) {
            addCriterion("bed_num not in", values, "bedNum");
            return (Criteria) this;
        }

        public Criteria andBedNumBetween(String value1, String value2) {
            addCriterion("bed_num between", value1, value2, "bedNum");
            return (Criteria) this;
        }

        public Criteria andBedNumNotBetween(String value1, String value2) {
            addCriterion("bed_num not between", value1, value2, "bedNum");
            return (Criteria) this;
        }

        public Criteria andSpecimenTypeIsNull() {
            addCriterion("specimen_type is null");
            return (Criteria) this;
        }

        public Criteria andSpecimenTypeIsNotNull() {
            addCriterion("specimen_type is not null");
            return (Criteria) this;
        }

        public Criteria andSpecimenTypeEqualTo(Long value) {
            addCriterion("specimen_type =", value, "specimenType");
            return (Criteria) this;
        }

        public Criteria andSpecimenTypeNotEqualTo(Long value) {
            addCriterion("specimen_type <>", value, "specimenType");
            return (Criteria) this;
        }

        public Criteria andSpecimenTypeGreaterThan(Long value) {
            addCriterion("specimen_type >", value, "specimenType");
            return (Criteria) this;
        }

        public Criteria andSpecimenTypeGreaterThanOrEqualTo(Long value) {
            addCriterion("specimen_type >=", value, "specimenType");
            return (Criteria) this;
        }

        public Criteria andSpecimenTypeLessThan(Long value) {
            addCriterion("specimen_type <", value, "specimenType");
            return (Criteria) this;
        }

        public Criteria andSpecimenTypeLessThanOrEqualTo(Long value) {
            addCriterion("specimen_type <=", value, "specimenType");
            return (Criteria) this;
        }

        public Criteria andSpecimenTypeIn(List<Long> values) {
            addCriterion("specimen_type in", values, "specimenType");
            return (Criteria) this;
        }

        public Criteria andSpecimenTypeNotIn(List<Long> values) {
            addCriterion("specimen_type not in", values, "specimenType");
            return (Criteria) this;
        }

        public Criteria andSpecimenTypeBetween(Long value1, Long value2) {
            addCriterion("specimen_type between", value1, value2, "specimenType");
            return (Criteria) this;
        }

        public Criteria andSpecimenTypeNotBetween(Long value1, Long value2) {
            addCriterion("specimen_type not between", value1, value2, "specimenType");
            return (Criteria) this;
        }

        public Criteria andSpecimenTraitIsNull() {
            addCriterion("specimen_trait is null");
            return (Criteria) this;
        }

        public Criteria andSpecimenTraitIsNotNull() {
            addCriterion("specimen_trait is not null");
            return (Criteria) this;
        }

        public Criteria andSpecimenTraitEqualTo(String value) {
            addCriterion("specimen_trait =", value, "specimenTrait");
            return (Criteria) this;
        }

        public Criteria andSpecimenTraitNotEqualTo(String value) {
            addCriterion("specimen_trait <>", value, "specimenTrait");
            return (Criteria) this;
        }

        public Criteria andSpecimenTraitGreaterThan(String value) {
            addCriterion("specimen_trait >", value, "specimenTrait");
            return (Criteria) this;
        }

        public Criteria andSpecimenTraitGreaterThanOrEqualTo(String value) {
            addCriterion("specimen_trait >=", value, "specimenTrait");
            return (Criteria) this;
        }

        public Criteria andSpecimenTraitLessThan(String value) {
            addCriterion("specimen_trait <", value, "specimenTrait");
            return (Criteria) this;
        }

        public Criteria andSpecimenTraitLessThanOrEqualTo(String value) {
            addCriterion("specimen_trait <=", value, "specimenTrait");
            return (Criteria) this;
        }

        public Criteria andSpecimenTraitLike(String value) {
            addCriterion("specimen_trait like", value, "specimenTrait");
            return (Criteria) this;
        }

        public Criteria andSpecimenTraitNotLike(String value) {
            addCriterion("specimen_trait not like", value, "specimenTrait");
            return (Criteria) this;
        }

        public Criteria andSpecimenTraitIn(List<String> values) {
            addCriterion("specimen_trait in", values, "specimenTrait");
            return (Criteria) this;
        }

        public Criteria andSpecimenTraitNotIn(List<String> values) {
            addCriterion("specimen_trait not in", values, "specimenTrait");
            return (Criteria) this;
        }

        public Criteria andSpecimenTraitBetween(String value1, String value2) {
            addCriterion("specimen_trait between", value1, value2, "specimenTrait");
            return (Criteria) this;
        }

        public Criteria andSpecimenTraitNotBetween(String value1, String value2) {
            addCriterion("specimen_trait not between", value1, value2, "specimenTrait");
            return (Criteria) this;
        }

        public Criteria andDiagnosisIsNull() {
            addCriterion("diagnosis is null");
            return (Criteria) this;
        }

        public Criteria andDiagnosisIsNotNull() {
            addCriterion("diagnosis is not null");
            return (Criteria) this;
        }

        public Criteria andDiagnosisEqualTo(String value) {
            addCriterion("diagnosis =", value, "diagnosis");
            return (Criteria) this;
        }

        public Criteria andDiagnosisNotEqualTo(String value) {
            addCriterion("diagnosis <>", value, "diagnosis");
            return (Criteria) this;
        }

        public Criteria andDiagnosisGreaterThan(String value) {
            addCriterion("diagnosis >", value, "diagnosis");
            return (Criteria) this;
        }

        public Criteria andDiagnosisGreaterThanOrEqualTo(String value) {
            addCriterion("diagnosis >=", value, "diagnosis");
            return (Criteria) this;
        }

        public Criteria andDiagnosisLessThan(String value) {
            addCriterion("diagnosis <", value, "diagnosis");
            return (Criteria) this;
        }

        public Criteria andDiagnosisLessThanOrEqualTo(String value) {
            addCriterion("diagnosis <=", value, "diagnosis");
            return (Criteria) this;
        }

        public Criteria andDiagnosisLike(String value) {
            addCriterion("diagnosis like", value, "diagnosis");
            return (Criteria) this;
        }

        public Criteria andDiagnosisNotLike(String value) {
            addCriterion("diagnosis not like", value, "diagnosis");
            return (Criteria) this;
        }

        public Criteria andDiagnosisIn(List<String> values) {
            addCriterion("diagnosis in", values, "diagnosis");
            return (Criteria) this;
        }

        public Criteria andDiagnosisNotIn(List<String> values) {
            addCriterion("diagnosis not in", values, "diagnosis");
            return (Criteria) this;
        }

        public Criteria andDiagnosisBetween(String value1, String value2) {
            addCriterion("diagnosis between", value1, value2, "diagnosis");
            return (Criteria) this;
        }

        public Criteria andDiagnosisNotBetween(String value1, String value2) {
            addCriterion("diagnosis not between", value1, value2, "diagnosis");
            return (Criteria) this;
        }

        public Criteria andDoctorIdIsNull() {
            addCriterion("doctor_id is null");
            return (Criteria) this;
        }

        public Criteria andDoctorIdIsNotNull() {
            addCriterion("doctor_id is not null");
            return (Criteria) this;
        }

        public Criteria andDoctorIdEqualTo(Integer value) {
            addCriterion("doctor_id =", value, "doctorId");
            return (Criteria) this;
        }

        public Criteria andDoctorIdNotEqualTo(Integer value) {
            addCriterion("doctor_id <>", value, "doctorId");
            return (Criteria) this;
        }

        public Criteria andDoctorIdGreaterThan(Integer value) {
            addCriterion("doctor_id >", value, "doctorId");
            return (Criteria) this;
        }

        public Criteria andDoctorIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("doctor_id >=", value, "doctorId");
            return (Criteria) this;
        }

        public Criteria andDoctorIdLessThan(Integer value) {
            addCriterion("doctor_id <", value, "doctorId");
            return (Criteria) this;
        }

        public Criteria andDoctorIdLessThanOrEqualTo(Integer value) {
            addCriterion("doctor_id <=", value, "doctorId");
            return (Criteria) this;
        }

        public Criteria andDoctorIdIn(List<Integer> values) {
            addCriterion("doctor_id in", values, "doctorId");
            return (Criteria) this;
        }

        public Criteria andDoctorIdNotIn(List<Integer> values) {
            addCriterion("doctor_id not in", values, "doctorId");
            return (Criteria) this;
        }

        public Criteria andDoctorIdBetween(Integer value1, Integer value2) {
            addCriterion("doctor_id between", value1, value2, "doctorId");
            return (Criteria) this;
        }

        public Criteria andDoctorIdNotBetween(Integer value1, Integer value2) {
            addCriterion("doctor_id not between", value1, value2, "doctorId");
            return (Criteria) this;
        }

        public Criteria andSamplingTimeIsNull() {
            addCriterion("sampling_time is null");
            return (Criteria) this;
        }

        public Criteria andSamplingTimeIsNotNull() {
            addCriterion("sampling_time is not null");
            return (Criteria) this;
        }

        public Criteria andSamplingTimeEqualTo(Date value) {
            addCriterion("sampling_time =", value, "samplingTime");
            return (Criteria) this;
        }

        public Criteria andSamplingTimeNotEqualTo(Date value) {
            addCriterion("sampling_time <>", value, "samplingTime");
            return (Criteria) this;
        }

        public Criteria andSamplingTimeGreaterThan(Date value) {
            addCriterion("sampling_time >", value, "samplingTime");
            return (Criteria) this;
        }

        public Criteria andSamplingTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("sampling_time >=", value, "samplingTime");
            return (Criteria) this;
        }

        public Criteria andSamplingTimeLessThan(Date value) {
            addCriterion("sampling_time <", value, "samplingTime");
            return (Criteria) this;
        }

        public Criteria andSamplingTimeLessThanOrEqualTo(Date value) {
            addCriterion("sampling_time <=", value, "samplingTime");
            return (Criteria) this;
        }

        public Criteria andSamplingTimeIn(List<Date> values) {
            addCriterion("sampling_time in", values, "samplingTime");
            return (Criteria) this;
        }

        public Criteria andSamplingTimeNotIn(List<Date> values) {
            addCriterion("sampling_time not in", values, "samplingTime");
            return (Criteria) this;
        }

        public Criteria andSamplingTimeBetween(Date value1, Date value2) {
            addCriterion("sampling_time between", value1, value2, "samplingTime");
            return (Criteria) this;
        }

        public Criteria andSamplingTimeNotBetween(Date value1, Date value2) {
            addCriterion("sampling_time not between", value1, value2, "samplingTime");
            return (Criteria) this;
        }

        public Criteria andReceiveTimeIsNull() {
            addCriterion("receive_time is null");
            return (Criteria) this;
        }

        public Criteria andReceiveTimeIsNotNull() {
            addCriterion("receive_time is not null");
            return (Criteria) this;
        }

        public Criteria andReceiveTimeEqualTo(Date value) {
            addCriterion("receive_time =", value, "receiveTime");
            return (Criteria) this;
        }

        public Criteria andReceiveTimeNotEqualTo(Date value) {
            addCriterion("receive_time <>", value, "receiveTime");
            return (Criteria) this;
        }

        public Criteria andReceiveTimeGreaterThan(Date value) {
            addCriterion("receive_time >", value, "receiveTime");
            return (Criteria) this;
        }

        public Criteria andReceiveTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("receive_time >=", value, "receiveTime");
            return (Criteria) this;
        }

        public Criteria andReceiveTimeLessThan(Date value) {
            addCriterion("receive_time <", value, "receiveTime");
            return (Criteria) this;
        }

        public Criteria andReceiveTimeLessThanOrEqualTo(Date value) {
            addCriterion("receive_time <=", value, "receiveTime");
            return (Criteria) this;
        }

        public Criteria andReceiveTimeIn(List<Date> values) {
            addCriterion("receive_time in", values, "receiveTime");
            return (Criteria) this;
        }

        public Criteria andReceiveTimeNotIn(List<Date> values) {
            addCriterion("receive_time not in", values, "receiveTime");
            return (Criteria) this;
        }

        public Criteria andReceiveTimeBetween(Date value1, Date value2) {
            addCriterion("receive_time between", value1, value2, "receiveTime");
            return (Criteria) this;
        }

        public Criteria andReceiveTimeNotBetween(Date value1, Date value2) {
            addCriterion("receive_time not between", value1, value2, "receiveTime");
            return (Criteria) this;
        }

        public Criteria andReportTimeIsNull() {
            addCriterion("report_time is null");
            return (Criteria) this;
        }

        public Criteria andReportTimeIsNotNull() {
            addCriterion("report_time is not null");
            return (Criteria) this;
        }

        public Criteria andReportTimeEqualTo(Date value) {
            addCriterion("report_time =", value, "reportTime");
            return (Criteria) this;
        }

        public Criteria andReportTimeNotEqualTo(Date value) {
            addCriterion("report_time <>", value, "reportTime");
            return (Criteria) this;
        }

        public Criteria andReportTimeGreaterThan(Date value) {
            addCriterion("report_time >", value, "reportTime");
            return (Criteria) this;
        }

        public Criteria andReportTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("report_time >=", value, "reportTime");
            return (Criteria) this;
        }

        public Criteria andReportTimeLessThan(Date value) {
            addCriterion("report_time <", value, "reportTime");
            return (Criteria) this;
        }

        public Criteria andReportTimeLessThanOrEqualTo(Date value) {
            addCriterion("report_time <=", value, "reportTime");
            return (Criteria) this;
        }

        public Criteria andReportTimeIn(List<Date> values) {
            addCriterion("report_time in", values, "reportTime");
            return (Criteria) this;
        }

        public Criteria andReportTimeNotIn(List<Date> values) {
            addCriterion("report_time not in", values, "reportTime");
            return (Criteria) this;
        }

        public Criteria andReportTimeBetween(Date value1, Date value2) {
            addCriterion("report_time between", value1, value2, "reportTime");
            return (Criteria) this;
        }

        public Criteria andReportTimeNotBetween(Date value1, Date value2) {
            addCriterion("report_time not between", value1, value2, "reportTime");
            return (Criteria) this;
        }

        public Criteria andDocimasterIdIsNull() {
            addCriterion("docimaster_id is null");
            return (Criteria) this;
        }

        public Criteria andDocimasterIdIsNotNull() {
            addCriterion("docimaster_id is not null");
            return (Criteria) this;
        }

        public Criteria andDocimasterIdEqualTo(Long value) {
            addCriterion("docimaster_id =", value, "docimasterId");
            return (Criteria) this;
        }

        public Criteria andDocimasterIdNotEqualTo(Long value) {
            addCriterion("docimaster_id <>", value, "docimasterId");
            return (Criteria) this;
        }

        public Criteria andDocimasterIdGreaterThan(Long value) {
            addCriterion("docimaster_id >", value, "docimasterId");
            return (Criteria) this;
        }

        public Criteria andDocimasterIdGreaterThanOrEqualTo(Long value) {
            addCriterion("docimaster_id >=", value, "docimasterId");
            return (Criteria) this;
        }

        public Criteria andDocimasterIdLessThan(Long value) {
            addCriterion("docimaster_id <", value, "docimasterId");
            return (Criteria) this;
        }

        public Criteria andDocimasterIdLessThanOrEqualTo(Long value) {
            addCriterion("docimaster_id <=", value, "docimasterId");
            return (Criteria) this;
        }

        public Criteria andDocimasterIdIn(List<Long> values) {
            addCriterion("docimaster_id in", values, "docimasterId");
            return (Criteria) this;
        }

        public Criteria andDocimasterIdNotIn(List<Long> values) {
            addCriterion("docimaster_id not in", values, "docimasterId");
            return (Criteria) this;
        }

        public Criteria andDocimasterIdBetween(Long value1, Long value2) {
            addCriterion("docimaster_id between", value1, value2, "docimasterId");
            return (Criteria) this;
        }

        public Criteria andDocimasterIdNotBetween(Long value1, Long value2) {
            addCriterion("docimaster_id not between", value1, value2, "docimasterId");
            return (Criteria) this;
        }

        public Criteria andConfirmManIdIsNull() {
            addCriterion("confirm_man_id is null");
            return (Criteria) this;
        }

        public Criteria andConfirmManIdIsNotNull() {
            addCriterion("confirm_man_id is not null");
            return (Criteria) this;
        }

        public Criteria andConfirmManIdEqualTo(Long value) {
            addCriterion("confirm_man_id =", value, "confirmManId");
            return (Criteria) this;
        }

        public Criteria andConfirmManIdNotEqualTo(Long value) {
            addCriterion("confirm_man_id <>", value, "confirmManId");
            return (Criteria) this;
        }

        public Criteria andConfirmManIdGreaterThan(Long value) {
            addCriterion("confirm_man_id >", value, "confirmManId");
            return (Criteria) this;
        }

        public Criteria andConfirmManIdGreaterThanOrEqualTo(Long value) {
            addCriterion("confirm_man_id >=", value, "confirmManId");
            return (Criteria) this;
        }

        public Criteria andConfirmManIdLessThan(Long value) {
            addCriterion("confirm_man_id <", value, "confirmManId");
            return (Criteria) this;
        }

        public Criteria andConfirmManIdLessThanOrEqualTo(Long value) {
            addCriterion("confirm_man_id <=", value, "confirmManId");
            return (Criteria) this;
        }

        public Criteria andConfirmManIdIn(List<Long> values) {
            addCriterion("confirm_man_id in", values, "confirmManId");
            return (Criteria) this;
        }

        public Criteria andConfirmManIdNotIn(List<Long> values) {
            addCriterion("confirm_man_id not in", values, "confirmManId");
            return (Criteria) this;
        }

        public Criteria andConfirmManIdBetween(Long value1, Long value2) {
            addCriterion("confirm_man_id between", value1, value2, "confirmManId");
            return (Criteria) this;
        }

        public Criteria andConfirmManIdNotBetween(Long value1, Long value2) {
            addCriterion("confirm_man_id not between", value1, value2, "confirmManId");
            return (Criteria) this;
        }

        public Criteria andSpecialistSignIsNull() {
            addCriterion("specialist_sign is null");
            return (Criteria) this;
        }

        public Criteria andSpecialistSignIsNotNull() {
            addCriterion("specialist_sign is not null");
            return (Criteria) this;
        }

        public Criteria andSpecialistSignEqualTo(Byte value) {
            addCriterion("specialist_sign =", value, "specialistSign");
            return (Criteria) this;
        }

        public Criteria andSpecialistSignNotEqualTo(Byte value) {
            addCriterion("specialist_sign <>", value, "specialistSign");
            return (Criteria) this;
        }

        public Criteria andSpecialistSignGreaterThan(Byte value) {
            addCriterion("specialist_sign >", value, "specialistSign");
            return (Criteria) this;
        }

        public Criteria andSpecialistSignGreaterThanOrEqualTo(Byte value) {
            addCriterion("specialist_sign >=", value, "specialistSign");
            return (Criteria) this;
        }

        public Criteria andSpecialistSignLessThan(Byte value) {
            addCriterion("specialist_sign <", value, "specialistSign");
            return (Criteria) this;
        }

        public Criteria andSpecialistSignLessThanOrEqualTo(Byte value) {
            addCriterion("specialist_sign <=", value, "specialistSign");
            return (Criteria) this;
        }

        public Criteria andSpecialistSignIn(List<Byte> values) {
            addCriterion("specialist_sign in", values, "specialistSign");
            return (Criteria) this;
        }

        public Criteria andSpecialistSignNotIn(List<Byte> values) {
            addCriterion("specialist_sign not in", values, "specialistSign");
            return (Criteria) this;
        }

        public Criteria andSpecialistSignBetween(Byte value1, Byte value2) {
            addCriterion("specialist_sign between", value1, value2, "specialistSign");
            return (Criteria) this;
        }

        public Criteria andSpecialistSignNotBetween(Byte value1, Byte value2) {
            addCriterion("specialist_sign not between", value1, value2, "specialistSign");
            return (Criteria) this;
        }

        public Criteria andPriceIsNull() {
            addCriterion("price is null");
            return (Criteria) this;
        }

        public Criteria andPriceIsNotNull() {
            addCriterion("price is not null");
            return (Criteria) this;
        }

        public Criteria andPriceEqualTo(Long value) {
            addCriterion("price =", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceNotEqualTo(Long value) {
            addCriterion("price <>", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceGreaterThan(Long value) {
            addCriterion("price >", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceGreaterThanOrEqualTo(Long value) {
            addCriterion("price >=", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceLessThan(Long value) {
            addCriterion("price <", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceLessThanOrEqualTo(Long value) {
            addCriterion("price <=", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceIn(List<Long> values) {
            addCriterion("price in", values, "price");
            return (Criteria) this;
        }

        public Criteria andPriceNotIn(List<Long> values) {
            addCriterion("price not in", values, "price");
            return (Criteria) this;
        }

        public Criteria andPriceBetween(Long value1, Long value2) {
            addCriterion("price between", value1, value2, "price");
            return (Criteria) this;
        }

        public Criteria andPriceNotBetween(Long value1, Long value2) {
            addCriterion("price not between", value1, value2, "price");
            return (Criteria) this;
        }

        public Criteria andPrintNumIsNull() {
            addCriterion("print_num is null");
            return (Criteria) this;
        }

        public Criteria andPrintNumIsNotNull() {
            addCriterion("print_num is not null");
            return (Criteria) this;
        }

        public Criteria andPrintNumEqualTo(Integer value) {
            addCriterion("print_num =", value, "printNum");
            return (Criteria) this;
        }

        public Criteria andPrintNumNotEqualTo(Integer value) {
            addCriterion("print_num <>", value, "printNum");
            return (Criteria) this;
        }

        public Criteria andPrintNumGreaterThan(Integer value) {
            addCriterion("print_num >", value, "printNum");
            return (Criteria) this;
        }

        public Criteria andPrintNumGreaterThanOrEqualTo(Integer value) {
            addCriterion("print_num >=", value, "printNum");
            return (Criteria) this;
        }

        public Criteria andPrintNumLessThan(Integer value) {
            addCriterion("print_num <", value, "printNum");
            return (Criteria) this;
        }

        public Criteria andPrintNumLessThanOrEqualTo(Integer value) {
            addCriterion("print_num <=", value, "printNum");
            return (Criteria) this;
        }

        public Criteria andPrintNumIn(List<Integer> values) {
            addCriterion("print_num in", values, "printNum");
            return (Criteria) this;
        }

        public Criteria andPrintNumNotIn(List<Integer> values) {
            addCriterion("print_num not in", values, "printNum");
            return (Criteria) this;
        }

        public Criteria andPrintNumBetween(Integer value1, Integer value2) {
            addCriterion("print_num between", value1, value2, "printNum");
            return (Criteria) this;
        }

        public Criteria andPrintNumNotBetween(Integer value1, Integer value2) {
            addCriterion("print_num not between", value1, value2, "printNum");
            return (Criteria) this;
        }

        public Criteria andCheckTipIsNull() {
            addCriterion("check_tip is null");
            return (Criteria) this;
        }

        public Criteria andCheckTipIsNotNull() {
            addCriterion("check_tip is not null");
            return (Criteria) this;
        }

        public Criteria andCheckTipEqualTo(String value) {
            addCriterion("check_tip =", value, "checkTip");
            return (Criteria) this;
        }

        public Criteria andCheckTipNotEqualTo(String value) {
            addCriterion("check_tip <>", value, "checkTip");
            return (Criteria) this;
        }

        public Criteria andCheckTipGreaterThan(String value) {
            addCriterion("check_tip >", value, "checkTip");
            return (Criteria) this;
        }

        public Criteria andCheckTipGreaterThanOrEqualTo(String value) {
            addCriterion("check_tip >=", value, "checkTip");
            return (Criteria) this;
        }

        public Criteria andCheckTipLessThan(String value) {
            addCriterion("check_tip <", value, "checkTip");
            return (Criteria) this;
        }

        public Criteria andCheckTipLessThanOrEqualTo(String value) {
            addCriterion("check_tip <=", value, "checkTip");
            return (Criteria) this;
        }

        public Criteria andCheckTipLike(String value) {
            addCriterion("check_tip like", value, "checkTip");
            return (Criteria) this;
        }

        public Criteria andCheckTipNotLike(String value) {
            addCriterion("check_tip not like", value, "checkTip");
            return (Criteria) this;
        }

        public Criteria andCheckTipIn(List<String> values) {
            addCriterion("check_tip in", values, "checkTip");
            return (Criteria) this;
        }

        public Criteria andCheckTipNotIn(List<String> values) {
            addCriterion("check_tip not in", values, "checkTip");
            return (Criteria) this;
        }

        public Criteria andCheckTipBetween(String value1, String value2) {
            addCriterion("check_tip between", value1, value2, "checkTip");
            return (Criteria) this;
        }

        public Criteria andCheckTipNotBetween(String value1, String value2) {
            addCriterion("check_tip not between", value1, value2, "checkTip");
            return (Criteria) this;
        }

        public Criteria andRemarksIsNull() {
            addCriterion("remarks is null");
            return (Criteria) this;
        }

        public Criteria andRemarksIsNotNull() {
            addCriterion("remarks is not null");
            return (Criteria) this;
        }

        public Criteria andRemarksEqualTo(String value) {
            addCriterion("remarks =", value, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksNotEqualTo(String value) {
            addCriterion("remarks <>", value, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksGreaterThan(String value) {
            addCriterion("remarks >", value, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksGreaterThanOrEqualTo(String value) {
            addCriterion("remarks >=", value, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksLessThan(String value) {
            addCriterion("remarks <", value, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksLessThanOrEqualTo(String value) {
            addCriterion("remarks <=", value, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksLike(String value) {
            addCriterion("remarks like", value, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksNotLike(String value) {
            addCriterion("remarks not like", value, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksIn(List<String> values) {
            addCriterion("remarks in", values, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksNotIn(List<String> values) {
            addCriterion("remarks not in", values, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksBetween(String value1, String value2) {
            addCriterion("remarks between", value1, value2, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksNotBetween(String value1, String value2) {
            addCriterion("remarks not between", value1, value2, "remarks");
            return (Criteria) this;
        }

        public Criteria andTipInfoIsNull() {
            addCriterion("tip_info is null");
            return (Criteria) this;
        }

        public Criteria andTipInfoIsNotNull() {
            addCriterion("tip_info is not null");
            return (Criteria) this;
        }

        public Criteria andTipInfoEqualTo(String value) {
            addCriterion("tip_info =", value, "tipInfo");
            return (Criteria) this;
        }

        public Criteria andTipInfoNotEqualTo(String value) {
            addCriterion("tip_info <>", value, "tipInfo");
            return (Criteria) this;
        }

        public Criteria andTipInfoGreaterThan(String value) {
            addCriterion("tip_info >", value, "tipInfo");
            return (Criteria) this;
        }

        public Criteria andTipInfoGreaterThanOrEqualTo(String value) {
            addCriterion("tip_info >=", value, "tipInfo");
            return (Criteria) this;
        }

        public Criteria andTipInfoLessThan(String value) {
            addCriterion("tip_info <", value, "tipInfo");
            return (Criteria) this;
        }

        public Criteria andTipInfoLessThanOrEqualTo(String value) {
            addCriterion("tip_info <=", value, "tipInfo");
            return (Criteria) this;
        }

        public Criteria andTipInfoLike(String value) {
            addCriterion("tip_info like", value, "tipInfo");
            return (Criteria) this;
        }

        public Criteria andTipInfoNotLike(String value) {
            addCriterion("tip_info not like", value, "tipInfo");
            return (Criteria) this;
        }

        public Criteria andTipInfoIn(List<String> values) {
            addCriterion("tip_info in", values, "tipInfo");
            return (Criteria) this;
        }

        public Criteria andTipInfoNotIn(List<String> values) {
            addCriterion("tip_info not in", values, "tipInfo");
            return (Criteria) this;
        }

        public Criteria andTipInfoBetween(String value1, String value2) {
            addCriterion("tip_info between", value1, value2, "tipInfo");
            return (Criteria) this;
        }

        public Criteria andTipInfoNotBetween(String value1, String value2) {
            addCriterion("tip_info not between", value1, value2, "tipInfo");
            return (Criteria) this;
        }

        public Criteria andApplicationIdIsNull() {
            addCriterion("application_id is null");
            return (Criteria) this;
        }

        public Criteria andApplicationIdIsNotNull() {
            addCriterion("application_id is not null");
            return (Criteria) this;
        }

        public Criteria andApplicationIdEqualTo(Long value) {
            addCriterion("application_id =", value, "applicationId");
            return (Criteria) this;
        }

        public Criteria andApplicationIdNotEqualTo(Long value) {
            addCriterion("application_id <>", value, "applicationId");
            return (Criteria) this;
        }

        public Criteria andApplicationIdGreaterThan(Long value) {
            addCriterion("application_id >", value, "applicationId");
            return (Criteria) this;
        }

        public Criteria andApplicationIdGreaterThanOrEqualTo(Long value) {
            addCriterion("application_id >=", value, "applicationId");
            return (Criteria) this;
        }

        public Criteria andApplicationIdLessThan(Long value) {
            addCriterion("application_id <", value, "applicationId");
            return (Criteria) this;
        }

        public Criteria andApplicationIdLessThanOrEqualTo(Long value) {
            addCriterion("application_id <=", value, "applicationId");
            return (Criteria) this;
        }

        public Criteria andApplicationIdIn(List<Long> values) {
            addCriterion("application_id in", values, "applicationId");
            return (Criteria) this;
        }

        public Criteria andApplicationIdNotIn(List<Long> values) {
            addCriterion("application_id not in", values, "applicationId");
            return (Criteria) this;
        }

        public Criteria andApplicationIdBetween(Long value1, Long value2) {
            addCriterion("application_id between", value1, value2, "applicationId");
            return (Criteria) this;
        }

        public Criteria andApplicationIdNotBetween(Long value1, Long value2) {
            addCriterion("application_id not between", value1, value2, "applicationId");
            return (Criteria) this;
        }

        public Criteria andProjectDocumentIdIsNull() {
            addCriterion("project_document_id is null");
            return (Criteria) this;
        }

        public Criteria andProjectDocumentIdIsNotNull() {
            addCriterion("project_document_id is not null");
            return (Criteria) this;
        }

        public Criteria andProjectDocumentIdEqualTo(Long value) {
            addCriterion("project_document_id =", value, "projectDocumentId");
            return (Criteria) this;
        }

        public Criteria andProjectDocumentIdNotEqualTo(Long value) {
            addCriterion("project_document_id <>", value, "projectDocumentId");
            return (Criteria) this;
        }

        public Criteria andProjectDocumentIdGreaterThan(Long value) {
            addCriterion("project_document_id >", value, "projectDocumentId");
            return (Criteria) this;
        }

        public Criteria andProjectDocumentIdGreaterThanOrEqualTo(Long value) {
            addCriterion("project_document_id >=", value, "projectDocumentId");
            return (Criteria) this;
        }

        public Criteria andProjectDocumentIdLessThan(Long value) {
            addCriterion("project_document_id <", value, "projectDocumentId");
            return (Criteria) this;
        }

        public Criteria andProjectDocumentIdLessThanOrEqualTo(Long value) {
            addCriterion("project_document_id <=", value, "projectDocumentId");
            return (Criteria) this;
        }

        public Criteria andProjectDocumentIdIn(List<Long> values) {
            addCriterion("project_document_id in", values, "projectDocumentId");
            return (Criteria) this;
        }

        public Criteria andProjectDocumentIdNotIn(List<Long> values) {
            addCriterion("project_document_id not in", values, "projectDocumentId");
            return (Criteria) this;
        }

        public Criteria andProjectDocumentIdBetween(Long value1, Long value2) {
            addCriterion("project_document_id between", value1, value2, "projectDocumentId");
            return (Criteria) this;
        }

        public Criteria andProjectDocumentIdNotBetween(Long value1, Long value2) {
            addCriterion("project_document_id not between", value1, value2, "projectDocumentId");
            return (Criteria) this;
        }

        public Criteria andSpecimenManIdIsNull() {
            addCriterion("specimen_man_id is null");
            return (Criteria) this;
        }

        public Criteria andSpecimenManIdIsNotNull() {
            addCriterion("specimen_man_id is not null");
            return (Criteria) this;
        }

        public Criteria andSpecimenManIdEqualTo(Long value) {
            addCriterion("specimen_man_id =", value, "specimenManId");
            return (Criteria) this;
        }

        public Criteria andSpecimenManIdNotEqualTo(Long value) {
            addCriterion("specimen_man_id <>", value, "specimenManId");
            return (Criteria) this;
        }

        public Criteria andSpecimenManIdGreaterThan(Long value) {
            addCriterion("specimen_man_id >", value, "specimenManId");
            return (Criteria) this;
        }

        public Criteria andSpecimenManIdGreaterThanOrEqualTo(Long value) {
            addCriterion("specimen_man_id >=", value, "specimenManId");
            return (Criteria) this;
        }

        public Criteria andSpecimenManIdLessThan(Long value) {
            addCriterion("specimen_man_id <", value, "specimenManId");
            return (Criteria) this;
        }

        public Criteria andSpecimenManIdLessThanOrEqualTo(Long value) {
            addCriterion("specimen_man_id <=", value, "specimenManId");
            return (Criteria) this;
        }

        public Criteria andSpecimenManIdIn(List<Long> values) {
            addCriterion("specimen_man_id in", values, "specimenManId");
            return (Criteria) this;
        }

        public Criteria andSpecimenManIdNotIn(List<Long> values) {
            addCriterion("specimen_man_id not in", values, "specimenManId");
            return (Criteria) this;
        }

        public Criteria andSpecimenManIdBetween(Long value1, Long value2) {
            addCriterion("specimen_man_id between", value1, value2, "specimenManId");
            return (Criteria) this;
        }

        public Criteria andSpecimenManIdNotBetween(Long value1, Long value2) {
            addCriterion("specimen_man_id not between", value1, value2, "specimenManId");
            return (Criteria) this;
        }

        public Criteria andExecuteDepartmentIdIsNull() {
            addCriterion("execute_department_id is null");
            return (Criteria) this;
        }

        public Criteria andExecuteDepartmentIdIsNotNull() {
            addCriterion("execute_department_id is not null");
            return (Criteria) this;
        }

        public Criteria andExecuteDepartmentIdEqualTo(Long value) {
            addCriterion("execute_department_id =", value, "executeDepartmentId");
            return (Criteria) this;
        }

        public Criteria andExecuteDepartmentIdNotEqualTo(Long value) {
            addCriterion("execute_department_id <>", value, "executeDepartmentId");
            return (Criteria) this;
        }

        public Criteria andExecuteDepartmentIdGreaterThan(Long value) {
            addCriterion("execute_department_id >", value, "executeDepartmentId");
            return (Criteria) this;
        }

        public Criteria andExecuteDepartmentIdGreaterThanOrEqualTo(Long value) {
            addCriterion("execute_department_id >=", value, "executeDepartmentId");
            return (Criteria) this;
        }

        public Criteria andExecuteDepartmentIdLessThan(Long value) {
            addCriterion("execute_department_id <", value, "executeDepartmentId");
            return (Criteria) this;
        }

        public Criteria andExecuteDepartmentIdLessThanOrEqualTo(Long value) {
            addCriterion("execute_department_id <=", value, "executeDepartmentId");
            return (Criteria) this;
        }

        public Criteria andExecuteDepartmentIdIn(List<Long> values) {
            addCriterion("execute_department_id in", values, "executeDepartmentId");
            return (Criteria) this;
        }

        public Criteria andExecuteDepartmentIdNotIn(List<Long> values) {
            addCriterion("execute_department_id not in", values, "executeDepartmentId");
            return (Criteria) this;
        }

        public Criteria andExecuteDepartmentIdBetween(Long value1, Long value2) {
            addCriterion("execute_department_id between", value1, value2, "executeDepartmentId");
            return (Criteria) this;
        }

        public Criteria andExecuteDepartmentIdNotBetween(Long value1, Long value2) {
            addCriterion("execute_department_id not between", value1, value2, "executeDepartmentId");
            return (Criteria) this;
        }

        public Criteria andSpecimenWindowIsNull() {
            addCriterion("specimen_window is null");
            return (Criteria) this;
        }

        public Criteria andSpecimenWindowIsNotNull() {
            addCriterion("specimen_window is not null");
            return (Criteria) this;
        }

        public Criteria andSpecimenWindowEqualTo(Integer value) {
            addCriterion("specimen_window =", value, "specimenWindow");
            return (Criteria) this;
        }

        public Criteria andSpecimenWindowNotEqualTo(Integer value) {
            addCriterion("specimen_window <>", value, "specimenWindow");
            return (Criteria) this;
        }

        public Criteria andSpecimenWindowGreaterThan(Integer value) {
            addCriterion("specimen_window >", value, "specimenWindow");
            return (Criteria) this;
        }

        public Criteria andSpecimenWindowGreaterThanOrEqualTo(Integer value) {
            addCriterion("specimen_window >=", value, "specimenWindow");
            return (Criteria) this;
        }

        public Criteria andSpecimenWindowLessThan(Integer value) {
            addCriterion("specimen_window <", value, "specimenWindow");
            return (Criteria) this;
        }

        public Criteria andSpecimenWindowLessThanOrEqualTo(Integer value) {
            addCriterion("specimen_window <=", value, "specimenWindow");
            return (Criteria) this;
        }

        public Criteria andSpecimenWindowIn(List<Integer> values) {
            addCriterion("specimen_window in", values, "specimenWindow");
            return (Criteria) this;
        }

        public Criteria andSpecimenWindowNotIn(List<Integer> values) {
            addCriterion("specimen_window not in", values, "specimenWindow");
            return (Criteria) this;
        }

        public Criteria andSpecimenWindowBetween(Integer value1, Integer value2) {
            addCriterion("specimen_window between", value1, value2, "specimenWindow");
            return (Criteria) this;
        }

        public Criteria andSpecimenWindowNotBetween(Integer value1, Integer value2) {
            addCriterion("specimen_window not between", value1, value2, "specimenWindow");
            return (Criteria) this;
        }

        public Criteria andTubeTypeIsNull() {
            addCriterion("tube_type is null");
            return (Criteria) this;
        }

        public Criteria andTubeTypeIsNotNull() {
            addCriterion("tube_type is not null");
            return (Criteria) this;
        }

        public Criteria andTubeTypeEqualTo(String value) {
            addCriterion("tube_type =", value, "tubeType");
            return (Criteria) this;
        }

        public Criteria andTubeTypeNotEqualTo(String value) {
            addCriterion("tube_type <>", value, "tubeType");
            return (Criteria) this;
        }

        public Criteria andTubeTypeGreaterThan(String value) {
            addCriterion("tube_type >", value, "tubeType");
            return (Criteria) this;
        }

        public Criteria andTubeTypeGreaterThanOrEqualTo(String value) {
            addCriterion("tube_type >=", value, "tubeType");
            return (Criteria) this;
        }

        public Criteria andTubeTypeLessThan(String value) {
            addCriterion("tube_type <", value, "tubeType");
            return (Criteria) this;
        }

        public Criteria andTubeTypeLessThanOrEqualTo(String value) {
            addCriterion("tube_type <=", value, "tubeType");
            return (Criteria) this;
        }

        public Criteria andTubeTypeLike(String value) {
            addCriterion("tube_type like", value, "tubeType");
            return (Criteria) this;
        }

        public Criteria andTubeTypeNotLike(String value) {
            addCriterion("tube_type not like", value, "tubeType");
            return (Criteria) this;
        }

        public Criteria andTubeTypeIn(List<String> values) {
            addCriterion("tube_type in", values, "tubeType");
            return (Criteria) this;
        }

        public Criteria andTubeTypeNotIn(List<String> values) {
            addCriterion("tube_type not in", values, "tubeType");
            return (Criteria) this;
        }

        public Criteria andTubeTypeBetween(String value1, String value2) {
            addCriterion("tube_type between", value1, value2, "tubeType");
            return (Criteria) this;
        }

        public Criteria andTubeTypeNotBetween(String value1, String value2) {
            addCriterion("tube_type not between", value1, value2, "tubeType");
            return (Criteria) this;
        }

        public Criteria andPatientIdIsNull() {
            addCriterion("patient_id is null");
            return (Criteria) this;
        }

        public Criteria andPatientIdIsNotNull() {
            addCriterion("patient_id is not null");
            return (Criteria) this;
        }

        public Criteria andPatientIdEqualTo(String value) {
            addCriterion("patient_id =", value, "patientId");
            return (Criteria) this;
        }

        public Criteria andPatientIdNotEqualTo(String value) {
            addCriterion("patient_id <>", value, "patientId");
            return (Criteria) this;
        }

        public Criteria andPatientIdGreaterThan(String value) {
            addCriterion("patient_id >", value, "patientId");
            return (Criteria) this;
        }

        public Criteria andPatientIdGreaterThanOrEqualTo(String value) {
            addCriterion("patient_id >=", value, "patientId");
            return (Criteria) this;
        }

        public Criteria andPatientIdLessThan(String value) {
            addCriterion("patient_id <", value, "patientId");
            return (Criteria) this;
        }

        public Criteria andPatientIdLessThanOrEqualTo(String value) {
            addCriterion("patient_id <=", value, "patientId");
            return (Criteria) this;
        }

        public Criteria andPatientIdLike(String value) {
            addCriterion("patient_id like", value, "patientId");
            return (Criteria) this;
        }

        public Criteria andPatientIdNotLike(String value) {
            addCriterion("patient_id not like", value, "patientId");
            return (Criteria) this;
        }

        public Criteria andPatientIdIn(List<String> values) {
            addCriterion("patient_id in", values, "patientId");
            return (Criteria) this;
        }

        public Criteria andPatientIdNotIn(List<String> values) {
            addCriterion("patient_id not in", values, "patientId");
            return (Criteria) this;
        }

        public Criteria andPatientIdBetween(String value1, String value2) {
            addCriterion("patient_id between", value1, value2, "patientId");
            return (Criteria) this;
        }

        public Criteria andPatientIdNotBetween(String value1, String value2) {
            addCriterion("patient_id not between", value1, value2, "patientId");
            return (Criteria) this;
        }

        public Criteria andPatientIdCardIsNull() {
            addCriterion("patient_id_card is null");
            return (Criteria) this;
        }

        public Criteria andPatientIdCardIsNotNull() {
            addCriterion("patient_id_card is not null");
            return (Criteria) this;
        }

        public Criteria andPatientIdCardEqualTo(String value) {
            addCriterion("patient_id_card =", value, "patientIdCard");
            return (Criteria) this;
        }

        public Criteria andPatientIdCardNotEqualTo(String value) {
            addCriterion("patient_id_card <>", value, "patientIdCard");
            return (Criteria) this;
        }

        public Criteria andPatientIdCardGreaterThan(String value) {
            addCriterion("patient_id_card >", value, "patientIdCard");
            return (Criteria) this;
        }

        public Criteria andPatientIdCardGreaterThanOrEqualTo(String value) {
            addCriterion("patient_id_card >=", value, "patientIdCard");
            return (Criteria) this;
        }

        public Criteria andPatientIdCardLessThan(String value) {
            addCriterion("patient_id_card <", value, "patientIdCard");
            return (Criteria) this;
        }

        public Criteria andPatientIdCardLessThanOrEqualTo(String value) {
            addCriterion("patient_id_card <=", value, "patientIdCard");
            return (Criteria) this;
        }

        public Criteria andPatientIdCardLike(String value) {
            addCriterion("patient_id_card like", value, "patientIdCard");
            return (Criteria) this;
        }

        public Criteria andPatientIdCardNotLike(String value) {
            addCriterion("patient_id_card not like", value, "patientIdCard");
            return (Criteria) this;
        }

        public Criteria andPatientIdCardIn(List<String> values) {
            addCriterion("patient_id_card in", values, "patientIdCard");
            return (Criteria) this;
        }

        public Criteria andPatientIdCardNotIn(List<String> values) {
            addCriterion("patient_id_card not in", values, "patientIdCard");
            return (Criteria) this;
        }

        public Criteria andPatientIdCardBetween(String value1, String value2) {
            addCriterion("patient_id_card between", value1, value2, "patientIdCard");
            return (Criteria) this;
        }

        public Criteria andPatientIdCardNotBetween(String value1, String value2) {
            addCriterion("patient_id_card not between", value1, value2, "patientIdCard");
            return (Criteria) this;
        }

        public Criteria andSpecimenStatusIsNull() {
            addCriterion("specimen_status is null");
            return (Criteria) this;
        }

        public Criteria andSpecimenStatusIsNotNull() {
            addCriterion("specimen_status is not null");
            return (Criteria) this;
        }

        public Criteria andSpecimenStatusEqualTo(Byte value) {
            addCriterion("specimen_status =", value, "specimenStatus");
            return (Criteria) this;
        }

        public Criteria andSpecimenStatusNotEqualTo(Byte value) {
            addCriterion("specimen_status <>", value, "specimenStatus");
            return (Criteria) this;
        }

        public Criteria andSpecimenStatusGreaterThan(Byte value) {
            addCriterion("specimen_status >", value, "specimenStatus");
            return (Criteria) this;
        }

        public Criteria andSpecimenStatusGreaterThanOrEqualTo(Byte value) {
            addCriterion("specimen_status >=", value, "specimenStatus");
            return (Criteria) this;
        }

        public Criteria andSpecimenStatusLessThan(Byte value) {
            addCriterion("specimen_status <", value, "specimenStatus");
            return (Criteria) this;
        }

        public Criteria andSpecimenStatusLessThanOrEqualTo(Byte value) {
            addCriterion("specimen_status <=", value, "specimenStatus");
            return (Criteria) this;
        }

        public Criteria andSpecimenStatusIn(List<Byte> values) {
            addCriterion("specimen_status in", values, "specimenStatus");
            return (Criteria) this;
        }

        public Criteria andSpecimenStatusNotIn(List<Byte> values) {
            addCriterion("specimen_status not in", values, "specimenStatus");
            return (Criteria) this;
        }

        public Criteria andSpecimenStatusBetween(Byte value1, Byte value2) {
            addCriterion("specimen_status between", value1, value2, "specimenStatus");
            return (Criteria) this;
        }

        public Criteria andSpecimenStatusNotBetween(Byte value1, Byte value2) {
            addCriterion("specimen_status not between", value1, value2, "specimenStatus");
            return (Criteria) this;
        }

        public Criteria andStatusIsNull() {
            addCriterion("status is null");
            return (Criteria) this;
        }

        public Criteria andStatusIsNotNull() {
            addCriterion("status is not null");
            return (Criteria) this;
        }

        public Criteria andStatusEqualTo(Integer value) {
            addCriterion("status =", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotEqualTo(Integer value) {
            addCriterion("status <>", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThan(Integer value) {
            addCriterion("status >", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("status >=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThan(Integer value) {
            addCriterion("status <", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThanOrEqualTo(Integer value) {
            addCriterion("status <=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusIn(List<Integer> values) {
            addCriterion("status in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotIn(List<Integer> values) {
            addCriterion("status not in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusBetween(Integer value1, Integer value2) {
            addCriterion("status between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("status not between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andExportFlagIsNull() {
            addCriterion("export_flag is null");
            return (Criteria) this;
        }

        public Criteria andExportFlagIsNotNull() {
            addCriterion("export_flag is not null");
            return (Criteria) this;
        }

        public Criteria andExportFlagEqualTo(Integer value) {
            addCriterion("export_flag =", value, "exportFlag");
            return (Criteria) this;
        }

        public Criteria andExportFlagNotEqualTo(Integer value) {
            addCriterion("export_flag <>", value, "exportFlag");
            return (Criteria) this;
        }

        public Criteria andExportFlagGreaterThan(Integer value) {
            addCriterion("export_flag >", value, "exportFlag");
            return (Criteria) this;
        }

        public Criteria andExportFlagGreaterThanOrEqualTo(Integer value) {
            addCriterion("export_flag >=", value, "exportFlag");
            return (Criteria) this;
        }

        public Criteria andExportFlagLessThan(Integer value) {
            addCriterion("export_flag <", value, "exportFlag");
            return (Criteria) this;
        }

        public Criteria andExportFlagLessThanOrEqualTo(Integer value) {
            addCriterion("export_flag <=", value, "exportFlag");
            return (Criteria) this;
        }

        public Criteria andExportFlagIn(List<Integer> values) {
            addCriterion("export_flag in", values, "exportFlag");
            return (Criteria) this;
        }

        public Criteria andExportFlagNotIn(List<Integer> values) {
            addCriterion("export_flag not in", values, "exportFlag");
            return (Criteria) this;
        }

        public Criteria andExportFlagBetween(Integer value1, Integer value2) {
            addCriterion("export_flag between", value1, value2, "exportFlag");
            return (Criteria) this;
        }

        public Criteria andExportFlagNotBetween(Integer value1, Integer value2) {
            addCriterion("export_flag not between", value1, value2, "exportFlag");
            return (Criteria) this;
        }

        public Criteria andDailyCodeIsNull() {
            addCriterion("daily_code is null");
            return (Criteria) this;
        }

        public Criteria andDailyCodeIsNotNull() {
            addCriterion("daily_code is not null");
            return (Criteria) this;
        }

        public Criteria andDailyCodeEqualTo(String value) {
            addCriterion("daily_code =", value, "dailyCode");
            return (Criteria) this;
        }

        public Criteria andDailyCodeNotEqualTo(String value) {
            addCriterion("daily_code <>", value, "dailyCode");
            return (Criteria) this;
        }

        public Criteria andDailyCodeGreaterThan(String value) {
            addCriterion("daily_code >", value, "dailyCode");
            return (Criteria) this;
        }

        public Criteria andDailyCodeGreaterThanOrEqualTo(String value) {
            addCriterion("daily_code >=", value, "dailyCode");
            return (Criteria) this;
        }

        public Criteria andDailyCodeLessThan(String value) {
            addCriterion("daily_code <", value, "dailyCode");
            return (Criteria) this;
        }

        public Criteria andDailyCodeLessThanOrEqualTo(String value) {
            addCriterion("daily_code <=", value, "dailyCode");
            return (Criteria) this;
        }

        public Criteria andDailyCodeLike(String value) {
            addCriterion("daily_code like", value, "dailyCode");
            return (Criteria) this;
        }

        public Criteria andDailyCodeNotLike(String value) {
            addCriterion("daily_code not like", value, "dailyCode");
            return (Criteria) this;
        }

        public Criteria andDailyCodeIn(List<String> values) {
            addCriterion("daily_code in", values, "dailyCode");
            return (Criteria) this;
        }

        public Criteria andDailyCodeNotIn(List<String> values) {
            addCriterion("daily_code not in", values, "dailyCode");
            return (Criteria) this;
        }

        public Criteria andDailyCodeBetween(String value1, String value2) {
            addCriterion("daily_code between", value1, value2, "dailyCode");
            return (Criteria) this;
        }

        public Criteria andDailyCodeNotBetween(String value1, String value2) {
            addCriterion("daily_code not between", value1, value2, "dailyCode");
            return (Criteria) this;
        }

        public Criteria andCommentFstIsNull() {
            addCriterion("comment_fst is null");
            return (Criteria) this;
        }

        public Criteria andCommentFstIsNotNull() {
            addCriterion("comment_fst is not null");
            return (Criteria) this;
        }

        public Criteria andCommentFstEqualTo(String value) {
            addCriterion("comment_fst =", value, "commentFst");
            return (Criteria) this;
        }

        public Criteria andCommentFstNotEqualTo(String value) {
            addCriterion("comment_fst <>", value, "commentFst");
            return (Criteria) this;
        }

        public Criteria andCommentFstGreaterThan(String value) {
            addCriterion("comment_fst >", value, "commentFst");
            return (Criteria) this;
        }

        public Criteria andCommentFstGreaterThanOrEqualTo(String value) {
            addCriterion("comment_fst >=", value, "commentFst");
            return (Criteria) this;
        }

        public Criteria andCommentFstLessThan(String value) {
            addCriterion("comment_fst <", value, "commentFst");
            return (Criteria) this;
        }

        public Criteria andCommentFstLessThanOrEqualTo(String value) {
            addCriterion("comment_fst <=", value, "commentFst");
            return (Criteria) this;
        }

        public Criteria andCommentFstLike(String value) {
            addCriterion("comment_fst like", value, "commentFst");
            return (Criteria) this;
        }

        public Criteria andCommentFstNotLike(String value) {
            addCriterion("comment_fst not like", value, "commentFst");
            return (Criteria) this;
        }

        public Criteria andCommentFstIn(List<String> values) {
            addCriterion("comment_fst in", values, "commentFst");
            return (Criteria) this;
        }

        public Criteria andCommentFstNotIn(List<String> values) {
            addCriterion("comment_fst not in", values, "commentFst");
            return (Criteria) this;
        }

        public Criteria andCommentFstBetween(String value1, String value2) {
            addCriterion("comment_fst between", value1, value2, "commentFst");
            return (Criteria) this;
        }

        public Criteria andCommentFstNotBetween(String value1, String value2) {
            addCriterion("comment_fst not between", value1, value2, "commentFst");
            return (Criteria) this;
        }

        public Criteria andCommentSecIsNull() {
            addCriterion("comment_sec is null");
            return (Criteria) this;
        }

        public Criteria andCommentSecIsNotNull() {
            addCriterion("comment_sec is not null");
            return (Criteria) this;
        }

        public Criteria andCommentSecEqualTo(String value) {
            addCriterion("comment_sec =", value, "commentSec");
            return (Criteria) this;
        }

        public Criteria andCommentSecNotEqualTo(String value) {
            addCriterion("comment_sec <>", value, "commentSec");
            return (Criteria) this;
        }

        public Criteria andCommentSecGreaterThan(String value) {
            addCriterion("comment_sec >", value, "commentSec");
            return (Criteria) this;
        }

        public Criteria andCommentSecGreaterThanOrEqualTo(String value) {
            addCriterion("comment_sec >=", value, "commentSec");
            return (Criteria) this;
        }

        public Criteria andCommentSecLessThan(String value) {
            addCriterion("comment_sec <", value, "commentSec");
            return (Criteria) this;
        }

        public Criteria andCommentSecLessThanOrEqualTo(String value) {
            addCriterion("comment_sec <=", value, "commentSec");
            return (Criteria) this;
        }

        public Criteria andCommentSecLike(String value) {
            addCriterion("comment_sec like", value, "commentSec");
            return (Criteria) this;
        }

        public Criteria andCommentSecNotLike(String value) {
            addCriterion("comment_sec not like", value, "commentSec");
            return (Criteria) this;
        }

        public Criteria andCommentSecIn(List<String> values) {
            addCriterion("comment_sec in", values, "commentSec");
            return (Criteria) this;
        }

        public Criteria andCommentSecNotIn(List<String> values) {
            addCriterion("comment_sec not in", values, "commentSec");
            return (Criteria) this;
        }

        public Criteria andCommentSecBetween(String value1, String value2) {
            addCriterion("comment_sec between", value1, value2, "commentSec");
            return (Criteria) this;
        }

        public Criteria andCommentSecNotBetween(String value1, String value2) {
            addCriterion("comment_sec not between", value1, value2, "commentSec");
            return (Criteria) this;
        }

        public Criteria andCommentThrIsNull() {
            addCriterion("comment_thr is null");
            return (Criteria) this;
        }

        public Criteria andCommentThrIsNotNull() {
            addCriterion("comment_thr is not null");
            return (Criteria) this;
        }

        public Criteria andCommentThrEqualTo(String value) {
            addCriterion("comment_thr =", value, "commentThr");
            return (Criteria) this;
        }

        public Criteria andCommentThrNotEqualTo(String value) {
            addCriterion("comment_thr <>", value, "commentThr");
            return (Criteria) this;
        }

        public Criteria andCommentThrGreaterThan(String value) {
            addCriterion("comment_thr >", value, "commentThr");
            return (Criteria) this;
        }

        public Criteria andCommentThrGreaterThanOrEqualTo(String value) {
            addCriterion("comment_thr >=", value, "commentThr");
            return (Criteria) this;
        }

        public Criteria andCommentThrLessThan(String value) {
            addCriterion("comment_thr <", value, "commentThr");
            return (Criteria) this;
        }

        public Criteria andCommentThrLessThanOrEqualTo(String value) {
            addCriterion("comment_thr <=", value, "commentThr");
            return (Criteria) this;
        }

        public Criteria andCommentThrLike(String value) {
            addCriterion("comment_thr like", value, "commentThr");
            return (Criteria) this;
        }

        public Criteria andCommentThrNotLike(String value) {
            addCriterion("comment_thr not like", value, "commentThr");
            return (Criteria) this;
        }

        public Criteria andCommentThrIn(List<String> values) {
            addCriterion("comment_thr in", values, "commentThr");
            return (Criteria) this;
        }

        public Criteria andCommentThrNotIn(List<String> values) {
            addCriterion("comment_thr not in", values, "commentThr");
            return (Criteria) this;
        }

        public Criteria andCommentThrBetween(String value1, String value2) {
            addCriterion("comment_thr between", value1, value2, "commentThr");
            return (Criteria) this;
        }

        public Criteria andCommentThrNotBetween(String value1, String value2) {
            addCriterion("comment_thr not between", value1, value2, "commentThr");
            return (Criteria) this;
        }

        public Criteria andCommentForIsNull() {
            addCriterion("comment_for is null");
            return (Criteria) this;
        }

        public Criteria andCommentForIsNotNull() {
            addCriterion("comment_for is not null");
            return (Criteria) this;
        }

        public Criteria andCommentForEqualTo(String value) {
            addCriterion("comment_for =", value, "commentFor");
            return (Criteria) this;
        }

        public Criteria andCommentForNotEqualTo(String value) {
            addCriterion("comment_for <>", value, "commentFor");
            return (Criteria) this;
        }

        public Criteria andCommentForGreaterThan(String value) {
            addCriterion("comment_for >", value, "commentFor");
            return (Criteria) this;
        }

        public Criteria andCommentForGreaterThanOrEqualTo(String value) {
            addCriterion("comment_for >=", value, "commentFor");
            return (Criteria) this;
        }

        public Criteria andCommentForLessThan(String value) {
            addCriterion("comment_for <", value, "commentFor");
            return (Criteria) this;
        }

        public Criteria andCommentForLessThanOrEqualTo(String value) {
            addCriterion("comment_for <=", value, "commentFor");
            return (Criteria) this;
        }

        public Criteria andCommentForLike(String value) {
            addCriterion("comment_for like", value, "commentFor");
            return (Criteria) this;
        }

        public Criteria andCommentForNotLike(String value) {
            addCriterion("comment_for not like", value, "commentFor");
            return (Criteria) this;
        }

        public Criteria andCommentForIn(List<String> values) {
            addCriterion("comment_for in", values, "commentFor");
            return (Criteria) this;
        }

        public Criteria andCommentForNotIn(List<String> values) {
            addCriterion("comment_for not in", values, "commentFor");
            return (Criteria) this;
        }

        public Criteria andCommentForBetween(String value1, String value2) {
            addCriterion("comment_for between", value1, value2, "commentFor");
            return (Criteria) this;
        }

        public Criteria andCommentForNotBetween(String value1, String value2) {
            addCriterion("comment_for not between", value1, value2, "commentFor");
            return (Criteria) this;
        }

        public Criteria andInstitutionIsNull() {
            addCriterion("institution is null");
            return (Criteria) this;
        }

        public Criteria andInstitutionIsNotNull() {
            addCriterion("institution is not null");
            return (Criteria) this;
        }

        public Criteria andInstitutionEqualTo(String value) {
            addCriterion("institution =", value, "institution");
            return (Criteria) this;
        }

        public Criteria andInstitutionNotEqualTo(String value) {
            addCriterion("institution <>", value, "institution");
            return (Criteria) this;
        }

        public Criteria andInstitutionGreaterThan(String value) {
            addCriterion("institution >", value, "institution");
            return (Criteria) this;
        }

        public Criteria andInstitutionGreaterThanOrEqualTo(String value) {
            addCriterion("institution >=", value, "institution");
            return (Criteria) this;
        }

        public Criteria andInstitutionLessThan(String value) {
            addCriterion("institution <", value, "institution");
            return (Criteria) this;
        }

        public Criteria andInstitutionLessThanOrEqualTo(String value) {
            addCriterion("institution <=", value, "institution");
            return (Criteria) this;
        }

        public Criteria andInstitutionLike(String value) {
            addCriterion("institution like", value, "institution");
            return (Criteria) this;
        }

        public Criteria andInstitutionNotLike(String value) {
            addCriterion("institution not like", value, "institution");
            return (Criteria) this;
        }

        public Criteria andInstitutionIn(List<String> values) {
            addCriterion("institution in", values, "institution");
            return (Criteria) this;
        }

        public Criteria andInstitutionNotIn(List<String> values) {
            addCriterion("institution not in", values, "institution");
            return (Criteria) this;
        }

        public Criteria andInstitutionBetween(String value1, String value2) {
            addCriterion("institution between", value1, value2, "institution");
            return (Criteria) this;
        }

        public Criteria andInstitutionNotBetween(String value1, String value2) {
            addCriterion("institution not between", value1, value2, "institution");
            return (Criteria) this;
        }

        public Criteria andAddrIsNull() {
            addCriterion("addr is null");
            return (Criteria) this;
        }

        public Criteria andAddrIsNotNull() {
            addCriterion("addr is not null");
            return (Criteria) this;
        }

        public Criteria andAddrEqualTo(String value) {
            addCriterion("addr =", value, "addr");
            return (Criteria) this;
        }

        public Criteria andAddrNotEqualTo(String value) {
            addCriterion("addr <>", value, "addr");
            return (Criteria) this;
        }

        public Criteria andAddrGreaterThan(String value) {
            addCriterion("addr >", value, "addr");
            return (Criteria) this;
        }

        public Criteria andAddrGreaterThanOrEqualTo(String value) {
            addCriterion("addr >=", value, "addr");
            return (Criteria) this;
        }

        public Criteria andAddrLessThan(String value) {
            addCriterion("addr <", value, "addr");
            return (Criteria) this;
        }

        public Criteria andAddrLessThanOrEqualTo(String value) {
            addCriterion("addr <=", value, "addr");
            return (Criteria) this;
        }

        public Criteria andAddrLike(String value) {
            addCriterion("addr like", value, "addr");
            return (Criteria) this;
        }

        public Criteria andAddrNotLike(String value) {
            addCriterion("addr not like", value, "addr");
            return (Criteria) this;
        }

        public Criteria andAddrIn(List<String> values) {
            addCriterion("addr in", values, "addr");
            return (Criteria) this;
        }

        public Criteria andAddrNotIn(List<String> values) {
            addCriterion("addr not in", values, "addr");
            return (Criteria) this;
        }

        public Criteria andAddrBetween(String value1, String value2) {
            addCriterion("addr between", value1, value2, "addr");
            return (Criteria) this;
        }

        public Criteria andAddrNotBetween(String value1, String value2) {
            addCriterion("addr not between", value1, value2, "addr");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}